package com.study.model.mdao;

import java.util.Date;
import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import com.alibaba.fastjson.JSONObject;

@Mapper
public interface OffersDAO {
	/**
	 * 根据条件查询报价单
	 * @param cusid 
	 * @param clazz
	 * @param status
	 * @param input
	 * @return
	 */
	List<JSONObject> selectByWhere(@Param("name") String name,@Param("custname") String custname,@Param("cusid")Integer cusid);
	
	
	List<JSONObject> selectByWheres(@Param("name") String name,@Param("custname") String custname,
			                        @Param("cusid")Integer cusid ,@Param("useid") String useid);
	
	/**
	 * 根据id查询一条记录
	 */
	JSONObject selectById(String id);
	
	/**
	 * 根据分类统计
	 */
	List<JSONObject> selectByResult();

	/**
	 * 添加
	 * @param opp
	 * @param theme
	 * @param dates
	 * @param price
	 * @param maoli
	 * @param custid
	 * @param user
	 * @param linId
	 * @param i
	 * @param more
	 * @param celve
	 * @param  
	 */
	Integer insert(@Param("opp")String opp, @Param("theme")String theme, 
			   @Param("dates")Date dates, @Param("price")String price, 
			   @Param("maoli")String maoli, @Param("custid")String custid,
			   @Param("user")String user, @Param("linId")String linId,
			   @Param("isShow")int i, @Param("more")String more,
			   @Param("celve")String celve);

	/**
	 * 找到id
	 * @param theme
	 * @return
	 */
	Integer findByName(@Param("theme")String theme);

	/**
	 * 修改isOrder的状态
	 * @param id
	 * @return
	 */
	int updateIsOrder(@Param("id")String id);

	/**
	 * 根据客户id查询所有记录
	 * @param id
	 * @return
	 */
	Integer findCountById(String id);
    /**
     * 判断当前报价是否转换为订单
     * @param id
     * @return
     */
	JSONObject selectShow(@Param("id")String id);
    /**
     * 修改报价(不改变时间)
     * @param id
     * @param theme
     * @param custid
     * @param linId
     * @param price
     * @param opp
     * @param useid
     * @param celve
     * @param more
     * @return
     */
	boolean editor(@Param("id")String id, @Param("name")String theme, @Param("cusid")String custid, @Param("linid")String linId,
			@Param("offer")Double price, @Param("oppid")String opp, @Param("useid")String useid,
			@Param("celve")String celve, @Param("remark")String more);
     /**
      *改变时间
      * @param id
      * @param theme
      * @param custid
      * @param linId
      * @param dates
      * @param price
      * @param opp
      * @param useid
      * @param celve
      * @param more
      * @return
      */
	boolean editors(@Param("id")String id, @Param("name")String theme, @Param("cusid")String custid, @Param("linid")String linId,
			@Param("date")Date date,@Param("offer")Double price, @Param("oppid")String opp, @Param("useid")String useid,
			@Param("celve")String celve, @Param("remark")String more);
}
